package com.pig4cloud.pig.common.core.util;

import java.time.LocalDate;
import java.util.concurrent.ThreadLocalRandom;

public class OrderCodeUtil {

	/**
	 * 生成订单编号
	 * @param prefix 前缀字符串
	 * @param randomDigits 末尾随机数位数（1~8安全范围）
	 * @return 完整单号
	 */
	public static String generateOrderCode(String prefix, int randomDigits) {
		// 当前年月日：yyyyMMdd
		String dateStr = LocalDate.now().toString().replace("-", "");
		// 随机数：0 ~ 10^randomDigits-1，左侧补零
		int max = (int) Math.pow(10, randomDigits);
		String randomStr = String.format("%0" + randomDigits + "d",
				ThreadLocalRandom.current().nextInt(max));
		return prefix + dateStr + randomStr;
	}
}